←Select platform

WriteMarkers(string,int,IEnumerable<RasterMarkerMetadata>) Method

Summary
Writes one or more markers to an existing file.
Syntax
C#
Objective-C
C++/CLI
Python
public void WriteMarkers( 
   string fileName, 
   int pageNumber, 
   IEnumerable<RasterMarkerMetadata> markers 
) 
- (BOOL)writeMarkers:(nullable NSArray<LTRasterMarkerMetadata *> *)markers  
              toFile:(NSString *)file  
          pageNumber:(NSInteger)pageNumber  
               error:(NSError **)error 
public: 
void WriteMarkers(  
   String^ fileName, 
   int pageNumber, 
   IEnumerable<RasterMarkerMetadata^>^ markers 
)  
def WriteMarkers(self,fileName,pageNumber,markers): 

Parameters

fileName
A String that contains the file name.

pageNumber
1-based index of the page at which to write the marker.

markers
A collection of RasterMarkerMetadata objects that contains the marker data.

Remarks

For Exif files, this metadata collection will contain all the Exif and GPS comments, stored in APP1. It will also contain the audio information stored in APP2.

Only JPEG and Exif JPEG files support writing markers.

Example
C#
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing; 
using Leadtools.ImageProcessing.Color; 
using Leadtools.Svg; 
 
 
void MarkersExample(string srcFileName, string destFileName) 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
 
   // Load the source image with markers 
   Debug.WriteLine("Loading the source image with all markers"); 
   codecs.Options.Load.Markers = true; 
   RasterImage srcImage = codecs.Load(srcFileName); 
 
   // Show the markers loaded 
   Debug.WriteLine("These markers were loaded:"); 
   foreach (RasterMarkerMetadata marker in srcImage.Markers) 
   { 
      byte[] data = marker.GetData(); 
      codecs.WriteMarker(srcFileName, 1, marker); 
      // codecs.WriteMarker(stream, 1, marker); 
      codecs.WriteTransformMarker(marker.Id, data, 0, 1); 
      Debug.WriteLine(" {0}, DataSize:{1}", marker.Id, data.Length); 
   } 
 
   // Create the destination image 
   RasterImage destImage = new RasterImage( 
      RasterMemoryFlags.Conventional, 
      320, 
      20, 
      24, 
      RasterByteOrder.Bgr, 
      RasterViewPerspective.TopLeft, 
      null, 
      IntPtr.Zero, 
      0); 
 
   // Save this as JPEG 
   codecs.Save(destImage, destFileName, RasterImageFormat.Jpeg, 24); 
 
   // Write the markers from the source image to this destination image 
   Debug.WriteLine("Writing the markers to the destination file"); 
   codecs.WriteMarkers(destFileName, 1, srcImage.Markers); 
 
   srcImage.Dispose(); 
   destImage.Dispose(); 
 
   // Re-load the destination image with markers 
   Debug.WriteLine("Loading the destination image with all markers"); 
   codecs.Options.Load.Markers = true; 
   destImage = codecs.Load(destFileName); 
 
   // Show the markers loaded 
   Debug.WriteLine("These markers were loaded:"); 
   foreach (RasterMarkerMetadata marker in destImage.Markers) 
   { 
      byte[] data = marker.GetData(); 
      Debug.WriteLine(" {0}, DataSize:{1}", marker.Id, data.Length); 
   } 
 
   destImage.Dispose(); 
 
   // Clean up 
   codecs.Dispose(); 
} 
Requirements

Target Platforms

Help Version 22.0.2023.5.5
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Codecs Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.